So, wunderbar. Können wir pünktlich loslegen heute. Willkommen zurück zur wunderbaren Welt
des Software Engineering und ich wünsche ein frohes neues Jahr. Ich hoffe, jetzt haben wir alle
den Jahreswechsel gut überstanden und sind jetzt fit, um eine weitere Runde Software Engineering
mitzumachen. Wir haben im Prinzip heute noch eine Einheit und noch drei weitere Inhaltseinheiten.
Heute wollen wir uns das Thema Software Test ein bisschen im Detail angucken, dann werden wir
noch eine Einheit uns gönnen zum Thema Software Evolution noch einmal im Detail. Dort die
verschiedenen Themen durchgucken und dann zu guter Letzt im klassischen Software Engineering ist
das Thema noch mal Projektmanagement. Wie kann ich ein Projekt quasi designen, wie kann ich die
Anforderungen, die ich ein Projekt habe, die Rahmenbedingungen, die Ressourcen, die es gibt
und so weiter gut planen und auf jeden Fall kommt natürlich ein Projekt auf alle zu und das werden
die Bachelor und Masterarbeiten sein. Also das, was wir im Thema Projektmanagement besprechen,
wird auch gut anwendbar sein auf die Planung von so einer Abschlussarbeit oder von generell
Projektarbeiten, damit man schon am Anfang bei der Planung einen guten Übersicht, eine gute
Übersicht hat, gut weiß, was auf einen zukommt. Dann als letzten Themenblock werden wir uns noch
angucken Software Engineering und Machine Learning und insbesondere dort noch mal auf die Themen,
wie ist es denn, wenn ich mit Software Tools, mit automatischen Tools programmiere, sprich solche
Programme wie GPT und GitHub Copilot, wie können die nützlich sein. Da würde ich gerne ein paar
Praxisberichte, weil wir dazu jetzt zwei Semester lang ein Seminar gemacht haben, wie man damit
programmieren kann, so ein bisschen als Indikatoren, wie das helfen kann, für welche Aufgaben das
vielleicht sinnvoll ist, für welche Aufgaben nicht. Kurze Einführung natürlich zum Machine Learning,
werden wir noch ganz kurz machen, um überhaupt zu verstehen, was das tut und wir werden uns dann
angucken, wo geht es denn hin in der Welt der Software Engineering und inwiefern kann vielleicht
Software Engineering nützlich sein für maschinelles Lernen und natürlich genau andersrum. Also in beide
Richtungen werden wir uns das in der letzten Einheit angucken und dann quasi in der letzten
Vorlesung des Semesters werden wir noch mal eine Frage-Antwort-Stunde machen. Wir werden noch mal
alles zusammenfassen, noch mal im Detail durchgehen, was die verschiedenen Themen waren und vielleicht
auch so ein bisschen Feedback geben, was könnte denn wichtig sein für die Klausur, was nicht und auch
die Aline Sindl und auch Sally Zeitler werden dann in der letzten Vorlesung hier mit dabei sein und
wir können noch mal alle offenen Fragen durchgehen und uns noch mal vor Augen führen, was wir alles
genannt haben in dem Semester, was alles wichtig sein wird für die Klausur. Das wird also in der
letzten Einheit stattfinden. Nur so das ist der Fahrplan zum Ende des Semesters. Also wir haben
schon einen großen Teil der Inhalte uns angeguckt. Wir haben jetzt quasi noch vier Inhaltsvorlesungen
heute und noch drei weitere und dann die Frage-Antwort-Stunde. Okay, heute das Thema wird sein
Software-Test und wir werden uns in spezifisch drei Teile des Software-Tests angucken. Das ist einmal
das Testen beim Entwickeln und dann wie kann ich testgetrieben entwickeln, also eine andere Form
von Entwicklung vorantreiben und dann noch mal die Tests, die wir quasi zum Ende machen, bevor wir
das Software ausliefern, vor dem Release, vor der Veröffentlichung und dann noch mal das Thema
Nutzer-Test. Also wie kann ein Nutzer mit unserer Software umgehen und in welcher Umgebung wird das
für ihn wichtig sein? Okay, schauen wir uns erstmal noch mal allgemeinen Software-Tests an und auch
noch mal so ein paar Grundlagen. Also was wir wollen mit den Tests ist, wir wollen die Software
besser machen und wir sollen mit den Tests zeigen, was die Software tun sollte. Also Software-Tests
prüfen ab, was die Software tun sollte und insbesondere was danach jeder, der die Software
benutzen soll oder benutzen wird, was der tun wird und was für den typische Vorgaben sind,
damit er nicht nachher enttäuscht ist. Und wir wollen hoffentlich schon bevor wir die Software
ausliefern, Bugs detektieren und entfernen. Insbesondere können wir unterscheiden in zwei
Testrichtungen, das ist einmal die Validierungstest. Also wir checken, wenn das System entsprechende
Testcases erfüllt, die es quasi erfüllen sollte und dann können wir nochmal defekt testen. Also da
geht es dann darum, Testfälle zu definieren, die speziell auf typische Fehlerquellen abprüfen.
Typische Fehlerquellen ist, wenn Variablen nicht in der richtigen Größenordnung sind. Also ich
viel zu hohe Geschwindigkeiten beispielsweise eingebe. Also zum Beispiel ich habe ein
Presenters
Zugänglich über
Offener Zugang
Dauer
01:03:21 Min
Aufnahmedatum
2024-01-11
Hochgeladen am
2024-01-11 22:29:03
Sprache
de-DE